public class ReadMe {
    /**
     * 2023-4-23 web核心
     * 1.创建项目  pom.xml 依赖jar包   定义jdk版本
     * 2.添加tomcat支持
     *      1）下载安装tomcat  9.几版本
     *      2）配置tomcat
     * 3.http状态码
     *      1）200 请求成功
     *      2）4开头表示前端（web）找不到服务器
     *      3）5开头，表示服务器出现错误
     * 4.get请求和post请求的区别？
     *      一般请求的时候请求数据较少，没有重要的数据时，用get
     *      其他用post：文件上传（IO流）,密码传递，表单传递
     *      一般给用于查询数据
     *      post用于更新数据(新增，修改数据，删除数据)
     * 5.响应和请求？
     *      请求：客户端请求服务端    浏览器端  --》Java后台服务端
     *      响应：Java后台通过逻辑处理得到的返回结果 将结果发送（响应）给客户端
     * 6.安装tomcat的时候，有一个port端口，将端口修改为大于0即可
     * 7.Java程序打包
     * 8.servlet的生命周期？
     * 9.要用servlet必须引入servlet的jar包
     * 10.Servlet的init只执行一次，service每次访问都会执行
     * 11.启动tomcat的时候，如果有多个tomcat启动，则会提示端口已经存在，
     *      1）要么将刚刚的tomcat停掉
     *      2）要么修改新项目的端口地址
     * 12.以后在项目中尽量不要使用if else   增加了解耦的难度
     * 13.前端访问后台：WebServlet注解地址找到对应的servlet类
     * 14.
     */
    /**
     * 2023-4-24 请求和响应
     * 1.请问为什么会默认跑到index.jsp页面？
     * 2.以后少用map，map的缺点？为什么不用map？
     * 3.得到前端传递到Java后台的值
     * 4.请求得到参数
     * 5.请求转发
     * 6.响应：Java传递数据到web端
     * 7.资源转发(数据共享)就是将数据转发到一个容器（req），在另一个地方取取出来
     * 8.重定向：resp.sendRedirect("/test.jsp");不能进行数据共享，至是单纯的跳转页面
     * 9.什么时候资源转发，什么时候用重定向？
     * 10.前端访问Java后台，可以通过a标签，或者form表单的提交按钮
     * 11.form表单如果要传数据到Java后台，可以通过表单的name属性得到数据
     * 12.如果是href传值，则是/url?username=123&password=fasd
     * 13.响应数据给前端：
     *      1）如果前端是jsp页面，则通过页面转发给前端
     *      req.getRequestDispatcher("/test.jsp").forward(req, resp);
     *      ${username}
     *      2)如果前端是html页面，则通过直接转发固定格式的数据
     *      以后默认通过json格式进行数据转发
     * ----------------------------------------------
     * 14.总结
     *      1：乱码处理：请求，响应
     *      2：请求：
     *              1：得到访问地址uri  /login
     *              2:得到前端传递的参数 req.getParameter("username")
     *              3：页面转发和重定向
     *              4：作用域？
     *              req  只作用域转发的页面
     *              session  只作用域当前浏览器 清除缓存后没有:不能换浏览器
     *              application  存在本地，缓存无法清除:可以在本地的多个浏览器都可以访问数据
     *      3.响应：
     *              1.响应状态码：
     *              2.响应给前端数据：
     *                      1）资源转发
     *                      2）json格式
     *                          1:引入jar包
     *                          2：JSONObject.toJSONString(model)
     */
    /**
     * 2023-4-25 jsp
     * 1.mvc
     *      1)m  BrandModel
     *      2)v  JSP页面
     *      3)c BrandAddServlet  一个访问一个servlet
     * 2.三层架构
     *      表现出：页面控制层  servlet
     *      逻辑层：业务逻辑层  service 写逻辑，处理逻辑代码
     *      数据层：数据访问层  保存数据的地方
     *      DB：数据库
     * 3.如果参数是一些功能差不多的，或者说是一个JavaBean里面的属性
     *      这时，可以将属性封装为对象进行传递
     * 4.不建议用全参数的构造方法封装对象
     * 5.引入Lombok接口
     * 6.servlet  五大步骤
     *      1）乱码
     *      2）接收前端数据
     *      3）封装model
     *      4）调用服务逻辑层
     *      5）响应给前端
     * 7.service 逻辑层
     * 8.dao  数据访问层，数据持久层
     * 9.打开查询所有页面，应该拿到所有数据
     * 10.如果数据来源于Java后台，则需要访问后台的地址
     * 11.一次访问一个servlet，一个对象对于一个service，model，dao
     * 12.前端需要引入jstl包
     * 总结：
     *      三层架构
     *      servlet  五大步骤
     *      service  业务逻辑
     *      dao   保存数据
     *      --------------------
     *      ${}
     *      <c:forEach></c:for>
     *      <c:if></c:if>
     *      jar包：
     *      页面数据来源于Java，以后访问页面都通过注解的方式进行访问
     *
     */
    /**
     * 2023-4-26 第一阶段项目改造
     * 1.点击修改时，应该跳转一个修改页面，同时，将刚刚的数据填充到表单
     * 2.修改的时候，要传递一个ID，在数据层根据id的条件进行修改list数据
     * ---------------------------------------------------------
     * 3.第三阶段的任务：将第一阶段你认为哪些数据是需要修改，按照面向对象的方式，将所有数据放到Java后台
     * 4.数据应该放到dao
     * ----------------------------
     * 5.步骤：
     *      1）提取对象：JavaBean   model ：E-R图
     *          E-R图一般是中文，主要给客户看
     *          根据E-R图写model层
     *      2)将第一阶段的网页修改为jsp页面
     *      3)servlet 页面控制层
     *      4)service
     *      5)dao
     *      注意：一个页面对于一个servlet
     *      一个对象对于一个model，service，dao
     * 6.jsp的页面引入用include
     */
}
